// subpackModule/pages/physicalCondition/list/list.js
const app = getApp()
const networkUtil = app.globalData.networkUtil
const util = app.globalData.util
const echarts = require('../../../../component/ec-canvas/echarts.js')

var dataList = [];
var nameList = [];
var Chart = null;
let logPrefix = "physicalCondition.list"

Page({

    /**
     * 页面的初始数据
     */
    data: {
        ec: {
            lazyLoad: true, // 延迟加载,
            disableTouch: true
        }
    },

    getData: function() {
        // 指定图表的配置项和数据
        let that = this;
        let url = app.globalData.baseUrl + "/physicalCondition/getTemperatureData"
        let requestData = {

        }

        networkUtil.request_get(url, requestData).then((res) => {
            let data = [];
            let name = [];
            for (let i = 0; i < res.data.length; i++) {
                data.push(res.data[i].temperature);
                name.push(res.data[i].checkTimeStr);
            }
            dataList = data;
            nameList = name;
            this.init_echarts(); //初始化图表
        }).catch((res) => {
            //若未获取到
            util.showToast("获取一周体温数据,出错!")
            return app.globalData.ERROR_STR
        })
    },

    //初始化图表
    init_echarts: function() {
        this.echartsComponnet.init((canvas, width, height) => {
            // 初始化图表
            Chart = echarts.init(canvas, null, {
                width: width,
                height: height
            });
            // Chart.setOption(this.getOption());
            this.setOption(Chart);
            // 注意这里一定要返回 chart 实例，否则会影响事件处理等
            return Chart;
        });
    },

    setOption: function(Chart) {
        //Chart.clear();  // 清除
        Chart.setOption(this.getOption()); //获取新数据
    },

    getOption: function() {
        var option = {
            color: ["#2ec7c9", '#b6a2de'], //图例图标颜色
            calculable: true,
            grid: {
                x: 50,
                x2: 50
            },
            xAxis: {
                type: 'category',
                name: '日期',
                data: nameList,
                axisLabel: {
                    interval: 0, // 横轴信息全部显示,
                    rotate: 40,
                    textStyle: {
                        fontSize: 11,
                        color: '#5D5D5D'
                    }
                },
                //设置轴线的属性
                axisLine: {
                    lineStyle: {
                        color: '#299cd4',
                        width: 2
                    }
                }
                //nameTextStyle: {//在name值存在下，设置name的样式
                //color: '#7cb5ec',
                //fontStyle: 'normal'
                //	},
            },
            yAxis: {
                type: 'value',
                name: '体温',
                //splitLine: { show: false },//去除网格线
                splitLine: {
                    lineStyle: {
                        // 使用深浅的间隔色
                        color: '#EBEBEB'
                    }
                },
                scale: true,
                //boundaryGap: [0, 1],
                min: 35,
                max: 42,
                //	nameTextStyle: {//在name值存在下，设置name的样式
                //color: 'red',
                //	fontStyle: 'normal'
                //	},
                axisLabel: {
                    textStyle: {
                        fontSize: 11,
                        color: '#5D5D5D'
                    },
                },
                //设置轴线的属性
                axisLine: {
                    lineStyle: {
                        color: '#299cd4',
                        width: 2
                    }
                }
            },
            series: [{
                data: dataList,
                type: 'line',
                smooth: true,
                markPoint: {
                    data: [{
                            type: 'max',
                            name: '最大值'
                        },
                        {
                            type: 'min',
                            name: '最小值'
                        }
                    ]
                },
                itemStyle: {
                    normal: {
                        label: {
                            show: true,
							fontSize: 11,
                        },
						//areaStyle: { type: 'default' }面积图
                    }
                }
            }, ]
        }
        return option;
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function(options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function() {

    },

    /**
     * 健康状况填写提醒》消息订阅。
     * @deprecated 待删
     */
    physicalConditionFillInRemind: function() {
        wx.requestSubscribeMessage({
            tmplIds: ['XrFHJDuU0hfVJcuPARCNje4U_C34lfulRVNh3rQFEPY'],
            success(res) {
                console.info(logPrefix + " physicalConditionFillInRemind().success", res)
            },
            fail(res) {
                console.info(logPrefix + " physicalConditionFillInRemind().fail", res)
            }
        })
    },




    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function() {
        this.echartsComponnet = this.selectComponent('#mychart');
        this.getData(); //获取数据
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function() {

    }
})